package cn.e4j.modular.crm.service;

import cn.e4j.core.dto.impl.Dto;
import cn.e4j.modular.crm.entity.GwgaT;
import cn.e4j.modular.crm.entity.GwgbT;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;
import java.util.Map;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author liuwei
 * @since 2019-11-20
 */
public interface Gwgi001Service extends IService<GwgaT> {

    List<Map<String, Object>> getHeadList(Page<Object> page, Dto inDto);

    List<Map<String, Object>> getGwgbList(Page<Object> page, Dto inDto);

    List<Map<String, Object>> getGwgcList(Page<Object> page, Dto inDto);

    List<GwgbT> getDetailList(Dto inDto);

    List<GwgaT> getGwgaDetailList(Dto inDto);

    boolean existedTheParams(GwgaT gwgaT);

    void add(List<GwgaT> gwgaTList, List<GwgbT> gwgbTList);

    void edit(List<GwgaT> gwgaTList, List<GwgbT> gwgbTList);

    void delete(GwgaT gwgaT);

    void deleteBatch(List<GwgaT> gwgaTList);

    void changeStatusBatch(List<GwgaT> gwgaTList);

    boolean existedGwbh(GwgaT gwgaT);

    boolean existedGwgc(GwgaT gwgaT);

    List<Map<String, Object>> getGwgaData(Page<Object> page, Dto inDto);
}
